1. Field of the Invention
The present disclosure relates generally to the operation of the Border Gateway Protocol and specifically to a method for efficiently filtering update network information sent by one BGP speaker to another BGP speaker.
2. Description of Related Art
Large communication networks (WAN) are typically composed of a large number of smaller networks (LAN) which are interconnected in a manner that permits a packet network device that is a member of one LAN to send and receive information to a packet network device that is a member of another LAN. In the event that a LAN is administered by one entity, it can be referred to as an autonomous system (AS). An autonomous system is a collection of Internet Protocol routing prefixes that are administered by one, central entity, such as one company or one organization. A number of standard routing protocols have been created that operate to share information relating to one AS with another AS. One such routing protocol that operates within an AS environment is the Border Gateway Protocol or BGP. BGP runs on packet network devices included in an AS and referred to as BGP speakers, and they generally operate to exchange routing information, about the AS in which they are a member, with another, neighboring AS. A BGP speaker is typically positioned at the edge of an AS and in communication with another BGP speaker located in a neighboring AS.
BGP running on a speaker generates and sends a number of different types of messages to other peer speakers in the same AS or to speakers located in neighboring AS's. These messages are used by the speakers to establish peering sessions, to exchange routing information, to report errors, to maintain a TCP connection and to request full routing information. The message that is generated by a BGP speaker to exchange routing information is called an update message, and this message among other things includes information about one or more paths in the AS, typically referred to as a path attribute, and it can include network layer reachability information (NLRI) which is one or more IP prefixes of a particular length. When a packet network device that is also a speaker detects a change in the AS in which it is a member, it generates and sends an update message to all peer speakers with which it can communicate. A network change that can result in the generation of an update message can be a new device connected to the AS, or it can be the result of an existing device going out of service due to some failure event, or for any one of a number of other reasons.
As autonomous systems grow in size and complexity, the number of update messages that are generated by speakers typically grows as well. Processing the update messages is a CPU-intensive operation, and can significantly degrade the overall BGP convergence or the time it takes for BGP to update forwarding tables. One solution to this problem is described in the IETF document RFC5291, which defines a BGP-based mechanism wherein a BGP speaker can filter outbound update messages and wherein the BGP speaker can send the filter information to a peer device which can also enforce similar outbound filtering of update messages that it creates.